/* 
 * File:   cCamera.h
 * Author: lrm
 *
 * Created on September 20, 2010, 5:15 PM
 */

#ifndef _CCAMERA_H_
#define	_CCAMERA_H_

#include <wx/string.h>
#include <wx/bitmap.h>
#include <wx/image.h>
#include <wx/icon.h>
#include <wx/menu.h>
#include <wx/gdicmn.h>
#include <wx/font.h>
#include <wx/colour.h>
#include <wx/settings.h>
#include <wx/radiobox.h>
#include <wx/tglbtn.h>
#include <wx/sizer.h>
#include <wx/statbox.h>
#include <wx/stattext.h>
#include <wx/textctrl.h>
#include <wx/choice.h>
#include <wx/gbsizer.h>
#include <wx/button.h>
#include <wx/checkbox.h>
#include <wx/frame.h>

///////////////////////////////////////////////////////////////////////////


///////////////////////////////////////////////////////////////////////////////
/// Class cCamera
///////////////////////////////////////////////////////////////////////////////
class cCamera : public wxFrame 
{
	private:
	
	protected:
		wxMenuBar* m_menubar3;
		wxMenu* cameraMenu;
		wxRadioBox* resolutionRadioBox;
		wxToggleButton* startCameraButton;
		wxStaticText* extrinsicsStaticText;
		wxTextCtrl* extrinsicsTextCtrl;
		wxStaticText* intrinsicsStaticText;
		wxTextCtrl* intrinsicsTextCtrl;
		wxToggleButton* calculateStereoButton;
		wxRadioBox* algorithmRadioBox;
		wxStaticText* m_staticText11;
		wxChoice* dispChoice;
		wxStaticText* m_staticText12;
		wxChoice* SADChoice;
		wxButton* ssButton;
		wxToggleButton* saveVideoButton;
		wxCheckBox* leftVCheckBox;
		wxCheckBox* rightVCheckBox;
		wxCheckBox* stereoVCheckBox;
		wxStaticText* m_staticText10;
		wxTextCtrl* saveTextCtrl;
		
		// Virtual event handlers, overide them in your derived class
		virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
		virtual void onExit( wxCommandEvent& event ) { event.Skip(); }
		virtual void onResolution( wxCommandEvent& event ) { event.Skip(); }
		virtual void onStartCamera( wxCommandEvent& event ) { event.Skip(); }
		virtual void onCalculateStereo( wxCommandEvent& event ) { event.Skip(); }
		virtual void onStereoRadioBox( wxCommandEvent& event ) { event.Skip(); }
		virtual void onDispChoice( wxCommandEvent& event ) { event.Skip(); }
		virtual void onSADChoice( wxCommandEvent& event ) { event.Skip(); }
		virtual void onScreenshot( wxCommandEvent& event ) { event.Skip(); }
		virtual void onSaveVideo( wxCommandEvent& event ) { event.Skip(); }
		
	
	public:
		
		cCamera( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxT("Camera"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL );
		
		~cCamera();
	
};
#endif	/* CCAMERA_H */

